package com.wolfeyes.framework.web.serializer.enums;

//import com.wolfeyes.framework.web.serializer.enums.BaseEnum;

/**
 * @title 状态类型的字典枚举类
 * @className StatusEnum
 * @author yanyljava
 * @create 2022-01-14 21:25
 */
public enum StatusEnum implements BaseEnum {
	
	ENABLE("enable", "启用"),
	
	DISABLE("disable", "禁用");

	/**
	 * @title 字典值
	 */
	private String code;
	
	/**
	 * @title 翻译文本
	 */
	private String text;

	StatusEnum(String code, String text) {
		this.code = code;
		this.text = text;
	}

	/**
	 * @title 获取字典值
	 */
	@Override
	public String getCode() {
		return code;
	}

	/**
	 * @title 获取翻译文本
	 */
	@Override
	public String getText() {
		return text;
	}
	
	/**
	 * @description 通过数据库的字典字段获取对应的字典类型枚举类Enum
	 * @title 一般情况下数据库的字典字段code在项目代码中都会有一个对应的字典类型枚举类Enum
	 * @param code 数据库的字典字段
	 * @return
	 */
	public static StatusEnum get(String code) {
		for(StatusEnum item : values()) {
			if(code.equals(item.getCode())){
				return item;
			}
		}
		// 返回默认值或者抛出异常
		return StatusEnum.ENABLE;
	}
	
}

